home *** CD-ROM | disk | FTP | other *** search
- /*
- -- ANSI C code generated by :
- -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.82) --
- -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
- -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr --
- -- http://www.loria.fr/SmallEiffel --
- */
- #include "compile_to_jvm.h"
- /*No:CST_ATT_BOOLEAN.arguments*/
- T0* r580try_to_undefine(T580* C,T0* a1,T0* a2){
- T0* R=NULL;
- X776undefine_in(a1,a2);
- R=r580try_to_undefine_aux(C,a1,a2);
- /*IF*/if ((R)!=((void*)(NULL))) {
- /*X249*//*[IRF3.3set_clients*/((((T853*)(((T853*)R))))->_clients)=((((T580*)C))->_clients/*20*/);
- /*]*/
- }
- else {
- r605fatal_undefine(((T605*)a2),a1);
- }
- /*FI*/return R;
- }
- /*No:CST_ATT_BOOLEAN.is_deferred*/
- void r580add_into(T580* C,T0* a1){
- T0* _fn=NULL;
- int _i=0;
- C->_base_class=r627base_class(((T627*)(X776start_position(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T580*)C))->_names/*8*/))))->_list/*0*/)),1)/*)*/))));
- _i=1;
- while (!((_i)>(/*(IRF4.6count*/(((T855*)((T855*)((((T953*)((T953*)((((T580*)C))->_names/*8*/))))->_list/*0*/))))->_upper/*8*//*)*/))) {
- _fn=/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T580*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/;
- /*IF*/if (r237has(((T237*)a1),X776to_key(_fn))) {
- _fn=/*X359*/((T0*)/*(IRF4.6first_name*//*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T398*)((T398*)(r237at(((T237*)a1),X776to_key(_fn))))))->_names/*8*/))))->_list/*0*/)),1)/*)*//*)*/);
- r683add_position(X776start_position(_fn));
- r683add_position(X776start_position(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T580*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/));
- r683error(((T683*)(oBC364eh)),((T0*)ms11_359));
- /*[IRF3.6append*/{T0* b1=X776to_string(_fn);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- r683error(((T683*)(oBC364eh)),((T0*)ms67_470));
- }
- else {
- r237put(((T237*)a1),(T0*)C,X776to_key(_fn));
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- T0* r580try_to_undefine_aux(T580* C,T0* a1,T0* a2){
- T0* R=NULL;
- r683add_position(r580start_position(C));
- r580error(X776start_position(a1),((T0*)ms1_321));
- r605fatal_undefine(((T605*)a2),a1);
- return R;
- }
- void r580make(T580* C,T0* a1,T0* a2,T0* a3){
- r580make_e_feature(C,a1,a2);
- C->_value_mem=a3;
- }
- /*No:CST_ATT_BOOLEAN.nb_errors*/
- /*No:CST_ATT_BOOLEAN.set_header_comment*/
- T0* r580start_position(T580* C){
- T0* R=NULL;
- R=X776start_position(/*(IRF4.6first_name*//*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T580*)C))->_names/*8*/))))->_list/*0*/)),1)/*)*//*)*/);
- return R;
- }
- T0* r580to_run_feature(T580* C,T0* a1,T0* a2){
- T0* R=NULL;
- T0* _rc=NULL;
- _rc=X291run_class(a1);
- R=r355at(((T355*)_rc),a2);
- if(NULL!=(R))switch(((T0*)R)->id) {
- case 808:
- break;
- default:
- R=NULL;
- };/*IF*/if ((R)==((void*)(NULL))) {
- {T808*n=malloc(sizeof(*n));
- *n=M808;
- r808make(n,a1,a2,(T0*)C);
- R=(T0*)n;
- }
- }
- /*FI*/return R;
- }
- /*No:CST_ATT_BOOLEAN.ensure_assertion*/
- /*No:CST_ATT_BOOLEAN.code_require*/
- /*No:CST_ATT_BOOLEAN.result_type*/
- /*No:CST_ATT_BOOLEAN.em1*/
- /*No:CST_ATT_BOOLEAN.set_clients*/
- /*No:CST_ATT_BOOLEAN.em2*/
- /*No:CST_ATT_BOOLEAN.value*/
- /*No:CST_ATT_BOOLEAN.require_assertion*/
- /*No:CST_ATT_BOOLEAN.names*/
- /*No:CST_ATT_BOOLEAN.value_mem*/
- int r580can_hide(T580* C,T0* a1,T0* a2){
- int R=0;
- /*IF*/if (((((T580*)C))->_result_type/*12*/)!=((void*)(/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/)))) {
- /*IF*/if ((((((T580*)C))->_result_type/*12*/)==((void*)(NULL)))||((/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/))==((void*)(NULL)))) {
- r683add_position(X359start_position(a1));
- r580error(r580start_position(C),((T0*)ms5_359));
- }
- /*FI*/}
- /*FI*//*IF*/if ((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X359arguments(a1)))) {
- /*IF*/{/*AT*/r683add_position(X359start_position(a1));
- r580error(r580start_position(C),((T0*)ms6_359));
- }
- /*FI*/}
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- /*IF*/if (((((T580*)C))->_result_type/*12*/)!=((void*)(NULL))) {
- /*IF*/if (!(X291is_a_in((((T580*)C))->_result_type/*12*/,/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/),a2))) {
- /*[IRF3.6append*/{T0* b1=((T0*)ms13_359);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.6append*/{T0* b1=X291run_time_mark((((T355*)((T355*)a2)))->_current_type/*0*/);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- r683error(((T683*)(oBC364eh)),((T0*)ms67_470));
- }
- /*FI*/}
- /*FI*/}
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- /*IF*//*AF*//*AE*/
- /*FI*/}
- /*FI*/R=(/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0);
- return R;
- }
- /*No:CST_ATT_BOOLEAN.header_comment*/
- int r580is_merge_with(T580* C,T0* a1,T0* a2){
- int R=0;
- /*IF*/if (((((T580*)C))->_result_type/*12*/)!=((void*)(/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/)))) {
- /*IF*/if ((((((T580*)C))->_result_type/*12*/)==((void*)(NULL)))||((/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/))==((void*)(NULL)))) {
- r683add_position(X359start_position(a1));
- r580error(r580start_position(C),((T0*)ms2_359));
- }
- /*FI*/}
- /*FI*//*IF*/if ((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X359arguments(a1)))) {
- /*IF*/{/*AT*/r683add_position(X359start_position(a1));
- r580error(r580start_position(C),((T0*)ms3_359));
- }
- /*FI*/}
- /*FI*//*IF*/if (((((T580*)C))->_result_type/*12*/)!=((void*)(NULL))) {
- /*IF*/if (!(X291is_a_in((((T580*)C))->_result_type/*12*/,/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/),a2))) {
- r683error(((T683*)(oBC364eh)),((T0*)ms12_359));
- }
- /*FI*/}
- /*FI*//*IF*//*AF*//*AE*/
- /*FI*/R=(/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0);
- return R;
- }
- /*No:CST_ATT_BOOLEAN.fz_dot*/
- /*No:CST_ATT_BOOLEAN.first_name*/
- /*No:CST_ATT_BOOLEAN.clients*/
- void r580collect_for(int a1){
- /*IF*/if ((a1)==(1001)) {
- /*IF*//*AF*//*AE*/
- /*FI*/}
- else {
- /*IF*//*AF*//*AE*/
- /*FI*/}
- /*FI*/}
- void r580error(T0* a1,T0* a2){
- r683add_position(a1);
- r683error(((T683*)(oBC364eh)),a2);
- }
- /*No:CST_ATT_BOOLEAN.base_class*/
- void r580make_e_feature(T580* C,T0* a1,T0* a2){
- C->_names=a1;
- C->_result_type=a2;
- }
- /*No:TYPE_INTEGER.id*/
- /*No:TYPE_INTEGER.jvm_target_descriptor_in*/
- /*No:TYPE_INTEGER.jvm_if_x_eq*/
- int r788has_creation(T788* C,T0* a1){
- int R=0;
- r683add_position(X776start_position(a1));
- r788error(/*(IRF4.6start_position*/(((T451*)((T451*)((((T788*)C))->_base_class_name/*4*/))))->_start_position/*4*//*)*/,((T0*)ms1_84));
- return R;
- }
- /*No:TYPE_INTEGER.is_anchored*/
- /*No:TYPE_INTEGER.us_integer*/
- /*No:TYPE_INTEGER.is_array*/
- int r788is_a(T788* C,T0* a1){
- int R=0;
- /*IF*/if (((X291is_integer(a1))||(X291is_double(a1)))||(X291is_real(a1))) {
- R=1;
- }
- else {
- R=r605is_subclass_of(((T605*)(r788base_class(C))),X291base_class(a1));
- /*IF*/if (R) {
- r788used_as_reference();
- }
- /*FI*/}
- /*FI*//*IF*/if (!(R)) {
- r683add_type((T0*)C,((T0*)ms71_470));
- r683add_type(a1,((T0*)ms67_470));
- }
- /*FI*/return R;
- }
- /*No:TYPE_INTEGER.jvm_to_reference*/
- /*No:TYPE_INTEGER.run_type*/
- /*No:TYPE_INTEGER.is_pointer*/
- /*No:TYPE_INTEGER.is_dummy_expanded*/
- int r788jvm_push_default(void){
- int R=0;
- /*[IRF3.4opcode_iconst_0*/r256opcode(((T256*)(oBC364code_attribute)),3,1);
- /*]*/
- R=1;
- return R;
- }
- /*No:TYPE_INTEGER.is_string*/
- /*No:TYPE_INTEGER.is_like_feature*/
- /*No:TYPE_INTEGER.is_like_current*/
- void r788make(T788* C,T0* a1){
- {T451*n=malloc(sizeof(*n));
- *n=M451;
- r451make(n,((T0*)ms15_473),a1);
- C->_base_class_name=(T0*)n;
- }
- }
- /*No:TYPE_INTEGER.nb_errors*/
- /*No:TYPE_INTEGER.us_item*/
- void r788load_ref(T0* a1){
- T0* _rf=NULL;
- T0* _rc=NULL;
- T0* _cn=NULL;
- {T451*n=malloc(sizeof(*n));
- *n=M451;
- r451make(n,a1,NULL);
- _cn=(T0*)n;
- }
- _rc=r605run_class(((T605*)(r451base_class(((T451*)_cn)))));
- r355set_at_run_time(((T355*)_rc));
- _rf=r355get_feature_with(((T355*)_rc),((T0*)ms86_473));
- }
- int fBC364type_integer_ref=0;
- T0*oBC364type_integer_ref=NULL;
- T0* r788type_integer_ref(void){
- if (fBC364type_integer_ref==0){
- T0* R=NULL;
- T0* _integer_ref=NULL;
- fBC364type_integer_ref=1;
- {T451*n=malloc(sizeof(*n));
- *n=M451;
- r451make(n,((T0*)ms16_473),NULL);
- _integer_ref=(T0*)n;
- }
- {T657*n=malloc(sizeof(*n));
- *n=M657;
- /*[IRF3.3make*/((((T657*)(n)))->_base_class_name)=(_integer_ref);
- /*]*/
- R=(T0*)n;
- }
- oBC364type_integer_ref=R;}
- return oBC364type_integer_ref;}
- /*No:TYPE_INTEGER.jvm_return_code*/
- int fBC788check_type=0;
- void r788check_type(T788* C){
- if (fBC788check_type==0){
- T0* _rc=NULL;
- T0* _bc=NULL;
- fBC788check_type=1;
- _bc=r788base_class(C);
- /*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- _rc=r788run_class(C);
- }
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- /*IF*/if (!((((T605*)((T605*)_bc)))->_is_expanded/*20*/)) {
- r788error(/*(IRF4.6start_position*/(((T451*)((T451*)((((T788*)C))->_base_class_name/*4*/))))->_start_position/*4*//*)*/,((T0*)ms1_788));
- }
- /*FI*/}
- /*FI*/}}
- /*No:TYPE_INTEGER.jvm_xnewarray*/
- /*No:TYPE_INTEGER.jvm_descriptor_in*/
- /*No:TYPE_INTEGER.start_position*/
- /*No:TYPE_INTEGER.fz_inako*/
- /*No:TYPE_INTEGER.is_user_expanded*/
- /*No:TYPE_INTEGER.is_character*/
- T0* r788written_mark(void){
- T0* R=NULL;
- R=((T0*)ms15_473);
- return R;
- }
- /*No:TYPE_INTEGER.is_run_type*/
- T0* r788to_runnable(T788* C,T0* a1){
- T0* R=NULL;
- R=(T0*)C;
- r788check_type(C);
- return R;
- }
- /*No:TYPE_INTEGER.is_formal_generic*/
- T0* r788generic_list(T788* C){
- T0* R=NULL;
- r788fatal_error_generic_list(C);
- return R;
- }
- /*No:TYPE_INTEGER.fz_30*/
- /*No:TYPE_INTEGER.is_real*/
- /*No:TYPE_INTEGER.us_integer_ref*/
- /*No:TYPE_INTEGER.is_bit*/
- void r788fatal_error_generic_list(T788* C){
- r683add_type((T0*)C,((T0*)ms12_291));
- r683print_as_fatal_error(((T683*)(oBC364eh)));
- }
- /*No:TYPE_INTEGER.jvm_check_class_invariant*/
- /*No:TYPE_INTEGER.jvm_xaload*/
- T0* r788smallest_ancestor(T788* C,T0* a1){
- T0* R=NULL;
- T0* _rto=NULL;
- _rto=X291run_type(a1);
- /*IF*/if (X291is_integer(_rto)) {
- R=(T0*)C;
- }
- else if (X291is_real(_rto)) {
- R=a1;
- }
- else if (X291is_double(_rto)) {
- R=a1;
- }
- else {
- R=r657smallest_ancestor(((T657*)(r788type_integer_ref())),_rto);
- }
- /*FI*/return R;
- }
- /*No:TYPE_INTEGER.is_boolean*/
- /*No:TYPE_INTEGER.is_double*/
- int r788jvm_stack_space(void){
- int R=0;
- /*IF*//*AF*//*AE*/
- R=1;
- /*FI*/return R;
- }
- T0* r788run_class(T788* C){
- T0* R=NULL;
- R=r604run_class((T0*)C);
- return R;
- }
- T0* r788run_time_mark(void){
- T0* R=NULL;
- R=((T0*)ms15_473);
- return R;
- }
- int r788is_a_in(T788* C,T0* a1,T0* a2){
- int R=0;
- T0* _ct=NULL;
- T0* _t2=NULL;
- T0* _t1=NULL;
- /*IF*/if ((r788written_mark())==((void*)(X291written_mark(a1)))) {
- R=1;
- }
- else {
- _ct=(((T355*)((T355*)a2)))->_current_type/*0*/;
- _t1=r788to_runnable(C,_ct);
- _t2=X291to_runnable(a1,_ct);
- /*IF*/if ((X291run_time_mark(_t1))==((void*)(X291run_time_mark(_t2)))) {
- R=1;
- }
- else {
- R=X291is_a(_t1,_t2);
- }
- /*FI*/}
- /*FI*/return R;
- }
- T0* r788look_up_for(T788* C,T0* a1,T0* a2){
- T0* R=NULL;
- R=r605look_up_for(((T605*)(r788base_class(C))),a1,a2);
- return R;
- }
- int r788jvm_convert_to(T0* a1){
- int R=0;
- /*IF*/if (X291is_reference(a1)) {
- /*[IRF3.2jvm_to_reference*/{T0* _ca=NULL;
- int _idx=0;
- T0* _rc=NULL;
- _ca=oBC364code_attribute;
- _rc=r657run_class(((T657*)(r788type_integer_ref())));
- _idx=r355fully_qualified_constant_pool_index(((T355*)_rc));
- r256opcode_new(((T256*)_ca),_idx);
- /*[IRF3.4opcode_dup_x1*/r256opcode(((T256*)_ca),90,1);
- /*]*/
- /*[IRF3.4opcode_swap*/r256opcode(((T256*)_ca),95,0);
- /*]*/
- _idx=r95idx_fieldref4(((T95*)(oBC364constant_pool)),_idx,((T0*)ms86_473),((T0*)ms162_470));
- r256opcode_putfield(((T256*)_ca),_idx,-(2));
- }/*]*/
- R=1;
- }
- else if (X291is_real(a1)) {
- /*[IRF3.4opcode_i2f*/r256opcode(((T256*)(oBC364code_attribute)),134,1);
- /*]*/
- R=1;
- }
- else if (X291is_double(a1)) {
- /*[IRF3.4opcode_i2d*/r256opcode(((T256*)(oBC364code_attribute)),135,1);
- /*]*/
- R=2;
- }
- else {
- R=1;
- }
- /*FI*/return R;
- }
- /*No:TYPE_INTEGER.expanded_initializer*/
- /*No:TYPE_INTEGER.jvm_if_x_ne*/
- /*No:TYPE_INTEGER.fz_dot*/
- /*No:TYPE_INTEGER.is_generic*/
- /*No:TYPE_INTEGER.jvm_write_local*/
- void r788jvm_initialize_local(int a1){
- /*[IRF3.4opcode_iconst_0*/r256opcode(((T256*)(oBC364code_attribute)),3,1);
- /*]*/
- /*[IRF3.6jvm_write_local*/{int b1=a1;
- r256opcode_istore(((T256*)(oBC364code_attribute)),b1);
- }/*]*/
- }
- int fBC788used_as_reference=0;
- void r788used_as_reference(void){
- if (fBC788used_as_reference==0){
- fBC788used_as_reference=1;
- r788load_ref(((T0*)ms16_473));
- }}
- /*No:TYPE_INTEGER.is_reference*/
- void r788error(T0* a1,T0* a2){
- r683add_position(a1);
- r683error(((T683*)(oBC364eh)),a2);
- }
- T0* r788base_class(T788* C){
- T0* R=NULL;
- T0* _bcn=NULL;
- _bcn=(((T788*)C))->_base_class_name/*4*/;
- /*IF*/if ((_bcn)!=((void*)(NULL))) {
- R=r451base_class(((T451*)_bcn));
- }
- else {
- /*[IRF3.6append*/{T0* b1=((T0*)ms3_291);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- r683add_type((T0*)C,((T0*)ms67_470));
- r683print_as_fatal_error(((T683*)(oBC364eh)));
- }
- /*FI*/return R;
- }
- /*No:TYPE_INTEGER.jvm_xastore*/
- /*No:TYPE_INTEGER.is_any*/
- /*No:TYPE_INTEGER.jvm_method_flags*/
- /*No:TYPE_INTEGER.base_class_name*/
- /*No:TYPE_INTEGER.jvm_push_local*/
- /*No:TYPE_INTEGER.is_expanded*/
- /*No:TYPE_INTEGER.is_basic_eiffel_expanded*/
- /*No:TYPE_INTEGER.is_none*/
- /*No:TYPE_INTEGER.is_integer*/
- /*No:PROC_CALL_1.arguments*/
- T0* r317add_comment(T317* C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) {
- R=(T0*)C;
- }
- /*AF*/else {
- {T46*n=malloc(sizeof(*n));
- *n=M46;
- r46make(n,(T0*)C,a1);
- R=(T0*)n;
- }
- }
- /*FI*/return R;
- }
- void r317make(T317* C,T0* a1,T0* a2,T0* a3){
- C->_target=a1;
- C->_feature_name=a2;
- C->_arguments=a3;
- }
- /*No:PROC_CALL_1.nb_errors*/
- /*No:PROC_CALL_1.feature_name*/
- /*No:PROC_CALL_1.arg_count*/
- /*No:PROC_CALL_1.run_feature*/
- /*No:PROC_CALL_1.set_run_compound*/
- T0* r317start_position(T317* C){
- T0* R=NULL;
- R=X776start_position((((T317*)C))->_feature_name/*12*/);
- return R;
- }
- /*No:PROC_CALL_1.target*/
- /*No:PROC_CALL_1.set_run_feature*/
- T0* r317to_runnable(T317* C,T0* a1){
- T0* R=NULL;
- T0* _a=NULL;
- /*IF*/if (((((T317*)C))->_run_compound/*4*/)==((void*)(NULL))) {
- r317to_runnable_0(C,a1);
- /*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- _a=r431to_runnable(((T431*)((((T317*)C))->_arguments/*20*/)),r317current_type(C));
- /*IF*/if ((_a)==((void*)(NULL))) {
- r317error(X662start_position(/*(IRF4.6arg1*/r431first(((T431*)((((T317*)C))->_arguments/*20*/)))/*)*/),((T0*)ms55_470));
- }
- else {
- C->_arguments=_a;
- }
- /*FI*/}
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- r431match_with(((T431*)((((T317*)C))->_arguments/*20*/)),(((T317*)C))->_run_feature/*16*/);
- }
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- R=(T0*)C;
- }
- /*FI*/}
- else {
- {T317*n=malloc(sizeof(*n));
- *n=M317;
- r317make(n,(((T317*)C))->_target/*8*/,(((T317*)C))->_feature_name/*12*/,(((T317*)C))->_arguments/*20*/);
- R=(T0*)n;
- }
- R=r317to_runnable(((T317*)R),a1);
- }
- /*FI*/return R;
- }
- /*No:PROC_CALL_1.us_c_inline_c*/
- int r317standard_use_current(T317* C){
- int R=0;
- /*IF*/{/*AT*/R=r431use_current(((T431*)((((T317*)C))->_arguments/*20*/)));
- }
- /*FI*//*IF*/if (R) {
- }
- else if (X662is_current((((T317*)C))->_target/*8*/)) {
- R=X496use_current((((T317*)C))->_run_feature/*16*/);
- }
- else {
- R=X662use_current((((T317*)C))->_target/*8*/);
- }
- /*FI*/return R;
- }
- /*No:PROC_CALL_1.fz_07*/
- T0* r317current_type(T317* C){
- T0* R=NULL;
- /*IF*/if (((((T317*)C))->_run_compound/*4*/)!=((void*)(NULL))) {
- R=(((T592*)((T592*)((((T317*)C))->_run_compound/*4*/))))->_current_type/*4*/;
- }
- /*FI*/return R;
- }
- /*No:PROC_CALL_1.run_compound*/
- void r317compile_to_jvm(T317* C){
- /*IF*/if ((((T0*)ms65_473))==((void*)(X776to_string((((T317*)C))->_feature_name/*12*/)))) {
- r683add_position(r317start_position(C));
- /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms1_317);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- }
- else {
- /*[IRF3.6call_proc_call_c2jvm*/{T317* C1=C;
- r228b_put_cpc(((T228*)(oBC364jvm)),(T0*)C1);
- }/*]*/
- }
- /*FI*/}
- void r317to_runnable_0(T317* C,T0* a1){
- C->_run_compound=a1;
- r317cpc_to_runnable(C,r317current_type(C));
- /*IF*/if ((/*X496*/((T0*)(((T832*)((T832*)((((T317*)C))->_run_feature/*16*/))))->_result_type/*24*/))!=((void*)(NULL))) {
- r683add_position(X496start_position((((T317*)C))->_run_feature/*16*/));
- r317error(X776start_position((((T317*)C))->_feature_name/*12*/),((T0*)ms1_173));
- }
- /*FI*/}
- /*No:PROC_CALL_1.is_pre_computable*/
- int r317use_current(T317* C){
- int R=0;
- T0* _s=NULL;
- T0* _ms=NULL;
- /*IF*/if ((((T0*)ms65_473))==((void*)(X776to_string((((T317*)C))->_feature_name/*12*/)))) {
- _ms=/*(IRF4.6arg1*/r431first(((T431*)((((T317*)C))->_arguments/*20*/)))/*)*/;
- if(NULL!=(_ms))switch(((T0*)_ms)->id) {
- case 805:
- break;
- default:
- _ms=NULL;
- };_s=(((T805*)((T805*)_ms)))->_to_string/*16*/;
- R=r7has(((T7*)_s),'C');
- }
- else {
- R=r317standard_use_current(C);
- }
- /*FI*/return R;
- }
- void r317cpc_to_runnable(T317* C,T0* a1){
- T0* _rc=NULL;
- T0* _t=NULL;
- _t=X662to_runnable((((T317*)C))->_target/*8*/,a1);
- /*IF*/if ((_t)==((void*)(NULL))) {
- r683add_position(X662start_position((((T317*)C))->_target/*8*/));
- /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms2_135);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- }
- /*FI*/C->_target=_t;
- _rc=X291run_class(X662result_type((((T317*)C))->_target/*8*/));
- C->_run_feature=r355get_rf(((T355*)_rc),(T0*)C);
- r576update((((T317*)C))->_target/*8*/,(((T317*)C))->_run_feature/*16*/);
- }
- void r317error(T0* a1,T0* a2){
- r683add_position(a1);
- r683error(((T683*)(oBC364eh)),a2);
- }
- /*No:PROC_CALL_1.fatal_error*/
- /*No:PROC_CALL_1.fz_bad_argument*/
- /*No:PROC_CALL_1.arg1*/
- /*No:PROC_CALL_1.end_mark_comment*/
- /*No:PROC_CALL_1.call_proc_call_c2jvm*/
- void r317afd_check(T317* C){
- T0* _running=NULL;
- T0* _rc=NULL;
- _rc=X291run_class(X662result_type((((T317*)C))->_target/*8*/));
- _running=(((T355*)((T355*)_rc)))->_running/*12*/;
- /*IF*/if ((_running)==((void*)(NULL))) {
- r683add_position(X662start_position((((T317*)C))->_target/*8*/));
- /*[IRF3.6append*/{T0* b1=((T0*)ms1_135);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.6append*/{T0* b1=X291run_time_mark((((T355*)((T355*)_rc)))->_current_type/*0*/);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.6append*/{T0* b1=((T0*)ms141_470);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- r683print_as_warning(((T683*)(oBC364eh)));
- r355set_at_run_time(((T355*)_rc));
- }
- else if ((r396count(((T396*)_running)))>(0)) {
- r576update((((T317*)C))->_target/*8*/,(((T317*)C))->_run_feature/*16*/);
- }
- /*FI*/X662afd_check((((T317*)C))->_target/*8*/);
- /*IF*/{/*AT*/r431afd_check(((T431*)((((T317*)C))->_arguments/*20*/)));
- }
- /*FI*/}
- T0* r317make_runnable(T317* C,T0* a1,T0* a2,T0* a3,T0* a4){
- T0* R=NULL;
- /*IF*/if (((((T317*)C))->_run_compound/*4*/)==((void*)(NULL))) {
- R=(T0*)C;
- r317make(((T317*)R),a2,(((T317*)C))->_feature_name/*12*/,a3);
- C->_run_compound=a1;
- C->_run_feature=a4;
- }
- else {
- {T317*n=malloc(sizeof(*n));
- *n=M317;
- r317make(n,a2,(((T317*)C))->_feature_name/*12*/,a3);
- R=(T0*)n;
- }
- /*[IRF3.3set_run_compound*/((((T317*)(((T317*)R))))->_run_compound)=(a1);
- /*]*/
- /*[IRF3.3set_run_feature*/((((T317*)(((T317*)R))))->_run_feature)=(a4);
- /*]*/
- }
- /*FI*/return R;
- }
- T0* r23add_comment(T23* C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) {
- R=(T0*)C;
- }
- else {
- {T529*n=malloc(sizeof(*n));
- *n=M529;
- r529make(n,(T0*)C,a1);
- R=(T0*)n;
- }
- }
- /*FI*/return R;
- }
- int r23to_integer(T23* C){
- int R=0;
- r23error((((T23*)C))->_start_position/*16*/,((T0*)ms69_470));
- return R;
- }
- int r23is_a(T23* C,T0* a1){
- int R=0;
- R=X291is_a(X291run_type((((T23*)C))->_result_type/*24*/),X291run_type(X662result_type(a1)));
- /*IF*/if (!(R)) {
- r683add_position((((T23*)C))->_start_position/*16*/);
- r23error(X662start_position(a1),((T0*)ms4_662));
- }
- /*FI*/return R;
- }
- /*No:LOCAL_NAME2.is_current*/
- int r23jvm_branch_if_false(T23* C){
- int R=0;
- r23compile_to_jvm(C);
- R=r256opcode_ifeq(((T256*)(oBC364code_attribute)));
- return R;
- }
- /*No:LOCAL_NAME2.static_value*/
- /*No:LOCAL_NAME2.to_string*/
- void r23compile_to_jvm_assignment(T23* C,T0* a1){
- int _jvm_offset=0;
- int _space=0;
- _jvm_offset=r228local_offset_of(((T228*)(oBC364jvm)),(T0*)C);
- _space=X662compile_to_jvm_into((((T629*)((T629*)a1)))->_right_side/*12*/,X291run_type((((T23*)C))->_result_type/*24*/));
- X291jvm_write_local(X291run_type((((T23*)C))->_result_type/*24*/),_jvm_offset);
- }
- /*No:LOCAL_NAME2.fz_iinaiv*/
- int r23jvm_branch_if_true(T23* C){
- int R=0;
- r23compile_to_jvm(C);
- R=r256opcode_ifne(((T256*)(oBC364code_attribute)));
- return R;
- }
- /*No:LOCAL_NAME2.set_result_type*/
- /*No:LOCAL_NAME2.start_position*/
- /*No:LOCAL_NAME2.compile_to_jvm_old*/
- T0* r23to_runnable(T23* C,T0* a1){
- T0* R=NULL;
- T0* _rt=NULL;
- T0* _declaration_name=NULL;
- T0* _lvl=NULL;
- T0* _rf=NULL;
- _rf=r604top_rf(((T604*)(oBC364small_eiffel)));
- _lvl=X496local_vars(_rf);
- _declaration_name=/*(IRF4.6name*/r733item(((T733*)((((T620*)((T620*)_lvl)))->_flat_list/*12*/)),(((T23*)C))->_rank/*20*/)/*)*/;
- /*[IRF3.3set_is_used*/((((T39*)(((T39*)_declaration_name))))->_is_used)=(1);
- /*]*/
- _rt=r620type(((T620*)_lvl),(((T23*)C))->_rank/*20*/);
- /*IF*/if (((((T23*)C))->_current_type/*8*/)==((void*)(NULL))) {
- C->_current_type=a1;
- C->_result_type=_rt;
- R=(T0*)C;
- }
- else {
- {T23*n=malloc(sizeof(*n));
- *n=M23;
- r23make_runnable(n,(T0*)C,a1,_rt);
- R=(T0*)n;
- }
- }
- /*FI*/return R;
- }
- /*No:LOCAL_NAME2.set_rank*/
- /*No:LOCAL_NAME2.rank*/
- /*No:LOCAL_NAME2.result_type*/
- /*No:LOCAL_NAME2.is_result*/
- /*No:LOCAL_NAME2.is_static*/
- void r23standard_compile_target_to_jvm(T23* C){
- r23compile_to_jvm(C);
- X291jvm_check_class_invariant((((T23*)C))->_result_type/*24*/);
- }
- int r23compile_to_jvm_into(T23* C,T0* a1){
- int R=0;
- R=r23standard_compile_to_jvm_into(C,a1);
- return R;
- }
- /*No:LOCAL_NAME2.compile_target_to_jvm*/
- /*No:LOCAL_NAME2.can_be_dropped*/
- /*No:LOCAL_NAME2.current_type*/
- void r23jvm_assign(T23* C){
- int _jvm_offset=0;
- _jvm_offset=r228local_offset_of(((T228*)(oBC364jvm)),(T0*)C);
- X291jvm_write_local(X291run_type((((T23*)C))->_result_type/*24*/),_jvm_offset);
- }
- /*No:LOCAL_NAME2.static_value_mem*/
- /*No:LOCAL_NAME2.is_manifest_string*/
- void r23refer_to(T23* C,T0* a1,T0* a2,int a3){
- T0* _declaration_name=NULL;
- C->_start_position=a1;
- C->_rank=a3;
- _declaration_name=/*(IRF4.6name*/r733item(((T733*)((((T620*)((T620*)a2)))->_flat_list/*12*/)),a3)/*)*/;
- C->_to_string=(((T39*)((T39*)_declaration_name)))->_to_string/*12*/;
- C->_result_type=(((T39*)((T39*)_declaration_name)))->_result_type/*24*/;
- }
- /*No:LOCAL_NAME2.is_void*/
- void r23compile_to_jvm(T23* C){
- int _jvm_offset=0;
- _jvm_offset=r228local_offset_of(((T228*)(oBC364jvm)),(T0*)C);
- X291jvm_push_local(X291run_type((((T23*)C))->_result_type/*24*/),_jvm_offset);
- }
- /*No:LOCAL_NAME2.is_pre_computable*/
- /*No:LOCAL_NAME2.use_current*/
- void r23error(T0* a1,T0* a2){
- r683add_position(a1);
- r683error(((T683*)(oBC364eh)),a2);
- }
- /*No:LOCAL_NAME2.isa_dca_inline_argument*/
- int r23standard_compile_to_jvm_into(T23* C,T0* a1){
- int R=0;
- r23compile_to_jvm(C);
- R=X291jvm_convert_to(X291run_type((((T23*)C))->_result_type/*24*/),a1);
- return R;
- }
- /*No:LOCAL_NAME2.afd_check*/
- void r23make_runnable(T23* C,T0* a1,T0* a2,T0* a3){
- *((T23*)(C))=*((T23*)(a1));
- C->_current_type=a2;
- C->_result_type=a3;
- }
- /*No:CALL_0_C.arguments*/
- T0* r487add_comment(T487* C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) {
- R=(T0*)C;
- }
- else {
- {T529*n=malloc(sizeof(*n));
- *n=M529;
- r529make(n,(T0*)C,a1);
- R=(T0*)n;
- }
- }
- /*FI*/return R;
- }
- int r487to_integer(T487* C){
- int R=0;
- T0* _rf1=NULL;
- _rf1=(((T487*)C))->_run_feature/*20*/;
- if(NULL!=(_rf1))switch(((T0*)_rf1)->id) {
- case 808:
- break;
- default:
- _rf1=NULL;
- };/*IF*/if ((_rf1)==((void*)(NULL))) {
- r487error(r487start_position(C),((T0*)ms69_470));
- }
- else {
- R=X662to_integer((((T808*)((T808*)_rf1)))->_value/*48*/);
- }
- /*FI*/return R;
- }
- int r487is_a(T487* C,T0* a1){
- int R=0;
- R=X291is_a(X291run_type((((T487*)C))->_result_type/*24*/),X291run_type(X662result_type(a1)));
- /*IF*/if (!(R)) {
- r683add_position(r487start_position(C));
- r487error(X662start_position(a1),((T0*)ms4_662));
- }
- /*FI*/return R;
- }
- /*No:CALL_0_C.is_current*/
- /*No:CALL_0_C.jvm_branch_if_false*/
- /*No:CALL_0_C.static_value*/
- void r487make(T487* C,T0* a1,T0* a2){
- C->_target=a1;
- C->_feature_name=a2;
- }
- /*No:CALL_0_C.nb_errors*/
- /*No:CALL_0_C.feature_name*/
- /*No:CALL_0_C.compile_to_jvm_assignment*/
- /*No:CALL_0_C.fz_iinaiv*/
- /*No:CALL_0_C.arg_count*/
- /*No:CALL_0_C.jvm_branch_if_true*/
- /*No:CALL_0_C.run_feature*/
- T0* r487start_position(T487* C){
- T0* R=NULL;
- R=X776start_position((((T487*)C))->_feature_name/*16*/);
- return R;
- }
- void r487compile_to_jvm_old(T487* C){
- X662compile_to_jvm_old((((T487*)C))->_target/*12*/);
- /*IF*//*AF*//*AE*/
- /*FI*/}
- /*No:CALL_0_C.target*/
- /*No:CALL_0_C.us_is_expanded_type*/
- T0* r487to_runnable(T487* C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((((T487*)C))->_current_type/*8*/)==((void*)(NULL))) {
- r487to_runnable_0(C,a1);
- /*IF*/if (((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0))&&((X496arg_count((((T487*)C))->_run_feature/*20*/))>(0))) {
- r683add_position(X776start_position((((T487*)C))->_feature_name/*16*/));
- r487error(X496start_position((((T487*)C))->_run_feature/*20*/),((T0*)ms1_752));
- }
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- R=(T0*)C;
- }
- /*FI*/}
- else {
- R=r487twin(C);
- /*[IRF3.3set_current_type*/((((T487*)(((T487*)R))))->_current_type)=(NULL);
- /*]*/
- R=r487to_runnable(((T487*)R),a1);
- }
- /*FI*/return R;
- }
- /*No:CALL_0_C.result_type*/
- /*No:CALL_0_C.is_result*/
- T0* r487twin(T487* C){
- T0* R=NULL;
- R=malloc(sizeof(*C));
- *((T487*)R)=*C;
- return R;
- }
- /*No:CALL_0_C.set_current_type*/
- int r487is_static(T487* C){
- int R=0;
- T0* _tb=NULL;
- T0* _tt=NULL;
- T0* _name=NULL;
- /*IF*/if (((((T487*)C))->_run_feature/*20*/)!=((void*)(NULL))) {
- _tt=X662result_type((((T487*)C))->_target/*12*/);
- _name=X776to_string(/*X496*/((T0*)(((T832*)((T832*)((((T487*)C))->_run_feature/*20*/))))->_name/*16*/));
- /*IF*/if ((((T0*)ms83_473))==((void*)(_name))) {
- R=1;
- /*IF*/if (X291is_expanded(_tt)) {
- C->_static_value_mem=1;
- }
- /*FI*/}
- else if ((((T0*)ms82_473))==((void*)(_name))) {
- R=1;
- /*IF*/if (X291is_basic_eiffel_expanded(_tt)) {
- C->_static_value_mem=1;
- }
- /*FI*/}
- else if (((((T0*)ms60_473))==((void*)(_name)))&&(X291is_bit(_tt))) {
- R=1;
- _tb=_tt;
- if(NULL!=(_tb))switch(((T0*)_tb)->id) {
- case 549: case 558:
- break;
- default:
- _tb=NULL;
- };C->_static_value_mem=X609nb(_tb);
- }
- else if (X662is_current((((T487*)C))->_target/*12*/)) {
- /*IF*/if (X496is_static((((T487*)C))->_run_feature/*20*/)) {
- R=1;
- C->_static_value_mem=X496static_value_mem((((T487*)C))->_run_feature/*20*/);
- }
- else {
- R=r487call_is_static(C);
- }
- /*FI*/}
- else {
- R=r487call_is_static(C);
- }
- /*FI*/}
- /*FI*/return R;
- }
- void r487standard_compile_target_to_jvm(T487* C){
- r487compile_to_jvm(C);
- X291jvm_check_class_invariant((((T487*)C))->_result_type/*24*/);
- }
- int r487compile_to_jvm_into(T487* C,T0* a1){
- int R=0;
- R=r487standard_compile_to_jvm_into(C,a1);
- return R;
- }
- /*No:CALL_0_C.compile_target_to_jvm*/
- int r487call_is_static(T487* C){
- int R=0;
- T0* _rf=NULL;
- T0* _running=NULL;
- T0* _rc=NULL;
- /*IF*/if (((((T487*)C))->_run_feature/*20*/)!=((void*)(NULL))) {
- _rc=X496run_class((((T487*)C))->_run_feature/*20*/);
- /*IF*/if ((_rc)!=((void*)(NULL))) {
- _running=(((T355*)((T355*)_rc)))->_running/*12*/;
- /*IF*/if (((_running)!=((void*)(NULL)))&&((r396count(((T396*)_running)))==(1))) {
- _rf=r355dynamic(((T355*)(r396first(((T396*)_running)))),(((T487*)C))->_run_feature/*20*/);
- /*IF*/if (X496is_static(_rf)) {
- C->_static_value_mem=X496static_value_mem(_rf);
- R=1;
- }
- /*FI*/}
- /*FI*/}
- /*FI*/}
- /*FI*/return R;
- }
- /*No:CALL_0_C.fz_07*/
- /*No:CALL_0_C.us_is_basic_expanded_type*/
- int r487can_be_dropped(T487* C){
- int R=0;
- /*IF*/if (X662can_be_dropped((((T487*)C))->_target/*12*/)) {
- R=X496can_be_dropped((((T487*)C))->_run_feature/*20*/);
- }
- /*FI*/return R;
- }
- /*No:CALL_0_C.us_count*/
- /*No:CALL_0_C.current_type*/
- /*No:CALL_0_C.jvm_assign*/
- /*No:CALL_0_C.static_value_mem*/
- /*No:CALL_0_C.is_manifest_string*/
- /*No:CALL_0_C.is_void*/
- int r487jvm_standard_branch_if_false(T487* C){
- int R=0;
- r487compile_to_jvm(C);
- R=r256opcode_ifeq(((T256*)(oBC364code_attribute)));
- return R;
- }
- void r487compile_to_jvm(T487* C){
- T0* _n=NULL;
- _n=X776to_string((((T487*)C))->_feature_name/*16*/);
- /*IF*/if ((((T0*)ms83_473))==((void*)(_n))) {
- /*IF*/if (X291is_expanded(X662result_type((((T487*)C))->_target/*12*/))) {
- /*[IRF3.4opcode_iconst_1*/r256opcode(((T256*)(oBC364code_attribute)),4,1);
- /*]*/
- }
- else {
- /*[IRF3.4opcode_iconst_0*/r256opcode(((T256*)(oBC364code_attribute)),3,1);
- /*]*/
- }
- /*FI*/}
- else if ((((T0*)ms82_473))==((void*)(_n))) {
- /*IF*/if (X291is_basic_eiffel_expanded(X662result_type((((T487*)C))->_target/*12*/))) {
- /*[IRF3.4opcode_iconst_1*/r256opcode(((T256*)(oBC364code_attribute)),4,1);
- /*]*/
- }
- else {
- /*[IRF3.4opcode_iconst_0*/r256opcode(((T256*)(oBC364code_attribute)),3,1);
- /*]*/
- }
- /*FI*/}
- else {
- /*[IRF3.6call_proc_call_c2jvm*/{T487* C1=C;
- r228b_put_cpc(((T228*)(oBC364jvm)),(T0*)C1);
- }/*]*/
- }
- /*FI*/}
- void r487to_runnable_0(T487* C,T0* a1){
- C->_current_type=a1;
- r487cpc_to_runnable(C,a1);
- C->_result_type=/*X496*/((T0*)(((T832*)((T832*)((((T487*)C))->_run_feature/*20*/))))->_result_type/*24*/);
- /*IF*/if (((((T487*)C))->_result_type/*24*/)==((void*)(NULL))) {
- r683add_position(X496start_position((((T487*)C))->_run_feature/*20*/));
- r487error(X776start_position((((T487*)C))->_feature_name/*16*/),((T0*)ms1_295));
- }
- else if (X291is_like_current((((T487*)C))->_result_type/*24*/)) {
- C->_result_type=X662result_type((((T487*)C))->_target/*12*/);
- }
- /*FI*/}
- int r487is_pre_computable(T487* C){
- int R=0;
- /*IF*/if (X662is_current((((T487*)C))->_target/*12*/)) {
- R=X496is_pre_computable((((T487*)C))->_run_feature/*20*/);
- }
- /*FI*/return R;
- }
- int r487jvm_standard_branch_if_true(T487* C){
- int R=0;
- r487compile_to_jvm(C);
- R=r256opcode_ifne(((T256*)(oBC364code_attribute)));
- return R;
- }
- int r487use_current(T487* C){
- int R=0;
- /*IF*//*AF*//*AE*/
- /*FI*//*IF*/if (R) {
- }
- else if (X662is_current((((T487*)C))->_target/*12*/)) {
- R=X496use_current((((T487*)C))->_run_feature/*20*/);
- }
- else {
- R=X662use_current((((T487*)C))->_target/*12*/);
- }
- /*FI*/return R;
- }
- void r487cpc_to_runnable(T487* C,T0* a1){
- T0* _rc=NULL;
- T0* _t=NULL;
- _t=X662to_runnable((((T487*)C))->_target/*12*/,a1);
- /*IF*/if ((_t)==((void*)(NULL))) {
- r683add_position(X662start_position((((T487*)C))->_target/*12*/));
- /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms2_135);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- }
- /*FI*/C->_target=_t;
- _rc=X291run_class(X662result_type((((T487*)C))->_target/*12*/));
- C->_run_feature=r355get_rf(((T355*)_rc),(T0*)C);
- r576update((((T487*)C))->_target/*12*/,(((T487*)C))->_run_feature/*20*/);
- }
- void r487error(T0* a1,T0* a2){
- r683add_position(a1);
- r683error(((T683*)(oBC364eh)),a2);
- }
- /*No:CALL_0_C.isa_dca_inline_argument*/
- /*No:CALL_0_C.fatal_error*/
- int r487standard_compile_to_jvm_into(T487* C,T0* a1){
- int R=0;
- r487compile_to_jvm(C);
- R=X291jvm_convert_to(X291run_type((((T487*)C))->_result_type/*24*/),a1);
- return R;
- }
- /*No:CALL_0_C.call_proc_call_c2jvm*/
- void r487afd_check(T487* C){
- T0* _running=NULL;
- T0* _rc=NULL;
- _rc=X291run_class(X662result_type((((T487*)C))->_target/*12*/));
- _running=(((T355*)((T355*)_rc)))->_running/*12*/;
- /*IF*/if ((_running)==((void*)(NULL))) {
- r683add_position(X662start_position((((T487*)C))->_target/*12*/));
- /*[IRF3.6append*/{T0* b1=((T0*)ms1_135);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.6append*/{T0* b1=X291run_time_mark((((T355*)((T355*)_rc)))->_current_type/*0*/);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.6append*/{T0* b1=((T0*)ms141_470);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- r683print_as_warning(((T683*)(oBC364eh)));
- r355set_at_run_time(((T355*)_rc));
- }
- else if ((r396count(((T396*)_running)))>(0)) {
- r576update((((T487*)C))->_target/*12*/,(((T487*)C))->_run_feature/*20*/);
- }
- /*FI*/X662afd_check((((T487*)C))->_target/*12*/);
- /*IF*//*AF*//*AE*/
- /*FI*/}
- void r583make(T583* C,T0* a1,T0* a2,T0* a3,T0* a4){
- C->_start_position=a1;
- C->_clients=a2;
- C->_comment=a3;
- /*IF*/if ((a4)!=((void*)(NULL))) {
- {T953*n=malloc(sizeof(*n));
- *n=M953;
- r953make(n,a4);
- C->_procedure_list=(T0*)n;
- }
- }
- /*FI*/}
- /*No:CREATION_CLAUSE.start_position*/
- void r583check_expanded_with(T583* C,T0* a1){
- T0* _rc=NULL;
- T0* _rf3=NULL;
- T0* _rf=NULL;
- /*IF*/if (((((T583*)C))->_procedure_list/*12*/)==((void*)(NULL))) {
- r683add_position((((T583*)C))->_start_position/*0*/);
- /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms6_583);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- }
- /*FI*//*IF*/if ((/*(IRF4.6count*/(((T855*)((T855*)((((T953*)((T953*)((((T583*)C))->_procedure_list/*12*/))))->_list/*0*/))))->_upper/*8*//*)*/)>(1)) {
- r683add_type(a1,((T0*)ms65_470));
- r683add_position((((T583*)C))->_start_position/*0*/);
- /*[IRF3.2fatal_error_vtec_2*//*[IRF3.6fatal_error*/{T0* b1=((T0*)ms12_364);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- /*]*/
- }
- /*FI*/_rc=X291run_class(a1);
- _rf=r355get_feature(((T355*)_rc),/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T583*)C))->_procedure_list/*12*/))))->_list/*0*/)),1)/*)*/);
- /*IF*/if ((_rf)==((void*)(NULL))) {
- r683add_position((((T583*)C))->_start_position/*0*/);
- /*[IRF3.6append*/{T0* b1=((T0*)ms7_583);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- r683add_type(a1,((T0*)ms8_583));
- r683print_as_fatal_error(((T683*)(oBC364eh)));
- }
- /*FI*/_rf3=_rf;
- if(NULL!=(_rf3))switch(((T0*)_rf3)->id) {
- case 832:
- break;
- default:
- _rf3=NULL;
- };/*IF*/if ((_rf3)==((void*)(NULL))) {
- r683add_position((((T583*)C))->_start_position/*0*/);
- r683add_position(X496start_position(_rf));
- /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms9_583);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- }
- /*FI*//*IF*/if ((r832arg_count(((T832*)_rf3)))>(0)) {
- r683add_type(a1,((T0*)ms65_470));
- r683add_position((((T583*)C))->_start_position/*0*/);
- r683add_position(/*(IRF4.6start_position*/r297start_position(((T297*)((((T832*)((T832*)_rf3)))->_base_feature/*44*/)))/*)*/);
- /*[IRF3.6append*/{T0* b1=((T0*)ms10_583);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.2fatal_error_vtec_2*//*[IRF3.6fatal_error*/{T0* b1=((T0*)ms12_364);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- /*]*/
- }
- /*FI*/}
- /*No:CREATION_CLAUSE.comment*/
- int r583has(T583* C,T0* a1){
- int R=0;
- /*IF*/if (((((T583*)C))->_procedure_list/*12*/)!=((void*)(NULL))) {
- R=r953has(((T953*)((((T583*)C))->_procedure_list/*12*/)),a1);
- }
- /*FI*/return R;
- }
- T0* r583expanded_initializer(T583* C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((((T583*)C))->_procedure_list/*12*/)!=((void*)(NULL))) {
- R=r355get_feature(((T355*)(X291run_class(a1))),/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T583*)C))->_procedure_list/*12*/))))->_list/*0*/)),1)/*)*/);
- if(NULL!=(R))switch(((T0*)R)->id) {
- case 832:
- break;
- default:
- R=NULL;
- };}
- /*FI*/return R;
- }
- /*No:CREATION_CLAUSE.fz_cbe*/
- /*No:CREATION_CLAUSE.clients*/
- /*No:CREATION_CLAUSE.fatal_error_vtec_2*/
- /*No:CREATION_CLAUSE.fatal_error*/
- /*No:CREATION_CLAUSE.procedure_list*/
- void r490make(T490* C,T0* a1,T0* a2){
- C->_to_string=r902item(a1);
- C->_start_position=a2;
- }
- /*No:TAG_NAME.to_string*/
- /*No:TAG_NAME.start_position*/
- /*No:CALL_1_C.arguments*/
- T0* r492add_comment(T492* C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) {
- R=(T0*)C;
- }
- else {
- {T529*n=malloc(sizeof(*n));
- *n=M529;
- r529make(n,(T0*)C,a1);
- R=(T0*)n;
- }
- }
- /*FI*/return R;
- }
- int r492to_integer(T492* C){
- int R=0;
- r492error(r492start_position(C),((T0*)ms69_470));
- return R;
- }
- int r492is_a(T492* C,T0* a1){
- int R=0;
- R=X291is_a(X291run_type((((T492*)C))->_result_type/*24*/),X291run_type(X662result_type(a1)));
- /*IF*/if (!(R)) {
- r683add_position(r492start_position(C));
- r492error(X662start_position(a1),((T0*)ms4_662));
- }
- /*FI*/return R;
- }
- /*No:CALL_1_C.is_current*/
- /*No:CALL_1_C.jvm_branch_if_false*/
- /*No:CALL_1_C.static_value*/
- void r492make(T492* C,T0* a1,T0* a2,T0* a3){
- C->_target=a1;
- C->_feature_name=a2;
- C->_arguments=a3;
- }
- /*No:CALL_1_C.nb_errors*/
- /*No:CALL_1_C.feature_name*/
- /*No:CALL_1_C.compile_to_jvm_assignment*/
- /*No:CALL_1_C.fz_iinaiv*/
- /*No:CALL_1_C.arg_count*/
- /*No:CALL_1_C.jvm_branch_if_true*/
- /*No:CALL_1_C.run_feature*/
- T0* r492start_position(T492* C){
- T0* R=NULL;
- R=X776start_position((((T492*)C))->_feature_name/*16*/);
- return R;
- }
- void r492compile_to_jvm_old(T492* C){
- X662compile_to_jvm_old((((T492*)C))->_target/*12*/);
- /*IF*/{/*AT*/r431compile_to_jvm_old(((T431*)((((T492*)C))->_arguments/*28*/)));
- }
- /*FI*/}
- /*No:CALL_1_C.target*/
- T0* r492to_runnable(T492* C,T0* a1){
- T0* R=NULL;
- T0* _tla=NULL;
- T0* _a=NULL;
- /*IF*/if (((((T492*)C))->_current_type/*8*/)==((void*)(NULL))) {
- r492to_runnable_0(C,a1);
- _a=r431to_runnable(((T431*)((((T492*)C))->_arguments/*28*/)),a1);
- /*IF*/if ((_a)==((void*)(NULL))) {
- r492error(X662start_position(/*(IRF4.6arg1*/r431first(((T431*)((((T492*)C))->_arguments/*28*/)))/*)*/),((T0*)ms55_470));
- }
- else {
- C->_arguments=_a;
- }
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- r431match_with(((T431*)((((T492*)C))->_arguments/*28*/)),(((T492*)C))->_run_feature/*20*/);
- }
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- _tla=(((T492*)C))->_result_type/*24*/;
- if(NULL!=(_tla))switch(((T0*)_tla)->id) {
- case 239:
- break;
- default:
- _tla=NULL;
- };/*IF*/if ((_tla)!=((void*)(NULL))) {
- C->_result_type=X291run_type(X662result_type(/*(IRF4.6arg1*/r431first(((T431*)((((T492*)C))->_arguments/*28*/)))/*)*/));
- }
- /*FI*/}
- /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
- R=(T0*)C;
- }
- /*FI*/}
- else {
- R=r492twin(C);
- /*[IRF3.3set_current_type*/((((T492*)(((T492*)R))))->_current_type)=(NULL);
- /*]*/
- R=r492to_runnable(((T492*)R),a1);
- }
- /*FI*/return R;
- }
- /*No:CALL_1_C.result_type*/
- /*No:CALL_1_C.is_result*/
- T0* r492twin(T492* C){
- T0* R=NULL;
- R=malloc(sizeof(*C));
- *((T492*)R)=*C;
- return R;
- }
- /*No:CALL_1_C.set_current_type*/
- /*No:CALL_1_C.is_static*/
- void r492standard_compile_target_to_jvm(T492* C){
- /*[IRF3.4compile_to_jvm*//*[IRF3.6call_proc_call_c2jvm*/{T492* C1=C;
- r228b_put_cpc(((T228*)(oBC364jvm)),(T0*)C1);
- }/*]*/
- /*]*/
- X291jvm_check_class_invariant((((T492*)C))->_result_type/*24*/);
- }
- int r492compile_to_jvm_into(T492* C,T0* a1){
- int R=0;
- R=r492standard_compile_to_jvm_into(C,a1);
- return R;
- }
- /*No:CALL_1_C.compile_target_to_jvm*/
- int r492call_is_static(T492* C){
- int R=0;
- T0* _rf=NULL;
- T0* _running=NULL;
- T0* _rc=NULL;
- /*IF*/if (((((T492*)C))->_run_feature/*20*/)!=((void*)(NULL))) {
- _rc=X496run_class((((T492*)C))->_run_feature/*20*/);
- /*IF*/if ((_rc)!=((void*)(NULL))) {
- _running=(((T355*)((T355*)_rc)))->_running/*12*/;
- /*IF*/if (((_running)!=((void*)(NULL)))&&((r396count(((T396*)_running)))==(1))) {
- _rf=r355dynamic(((T355*)(r396first(((T396*)_running)))),(((T492*)C))->_run_feature/*20*/);
- /*IF*/if (X496is_static(_rf)) {
- C->_static_value_mem=X496static_value_mem(_rf);
- R=1;
- }
- /*FI*/}
- /*FI*/}
- /*FI*/}
- /*FI*/return R;
- }
- /*No:CALL_1_C.fz_07*/
- /*No:CALL_1_C.can_be_dropped*/
- /*No:CALL_1_C.current_type*/
- /*No:CALL_1_C.jvm_assign*/
- /*No:CALL_1_C.static_value_mem*/
- /*No:CALL_1_C.is_manifest_string*/
- /*No:CALL_1_C.is_void*/
- int r492jvm_standard_branch_if_false(T492* C){
- int R=0;
- /*[IRF3.4compile_to_jvm*//*[IRF3.6call_proc_call_c2jvm*/{T492* C1=C;
- r228b_put_cpc(((T228*)(oBC364jvm)),(T0*)C1);
- }/*]*/
- /*]*/
- R=r256opcode_ifeq(((T256*)(oBC364code_attribute)));
- return R;
- }
- /*No:CALL_1_C.compile_to_jvm*/
- void r492to_runnable_0(T492* C,T0* a1){
- C->_current_type=a1;
- r492cpc_to_runnable(C,a1);
- C->_result_type=/*X496*/((T0*)(((T832*)((T832*)((((T492*)C))->_run_feature/*20*/))))->_result_type/*24*/);
- /*IF*/if (((((T492*)C))->_result_type/*24*/)==((void*)(NULL))) {
- r683add_position(X496start_position((((T492*)C))->_run_feature/*20*/));
- r492error(X776start_position((((T492*)C))->_feature_name/*16*/),((T0*)ms1_295));
- }
- else if (X291is_like_current((((T492*)C))->_result_type/*24*/)) {
- C->_result_type=X662result_type((((T492*)C))->_target/*12*/);
- }
- /*FI*/}
- /*No:CALL_1_C.is_pre_computable*/
- int r492jvm_standard_branch_if_true(T492* C){
- int R=0;
- /*[IRF3.4compile_to_jvm*//*[IRF3.6call_proc_call_c2jvm*/{T492* C1=C;
- r228b_put_cpc(((T228*)(oBC364jvm)),(T0*)C1);
- }/*]*/
- /*]*/
- R=r256opcode_ifne(((T256*)(oBC364code_attribute)));
- return R;
- }
- int r492use_current(T492* C){
- int R=0;
- /*IF*/{/*AT*/R=r431use_current(((T431*)((((T492*)C))->_arguments/*28*/)));
- }
- /*FI*//*IF*/if (R) {
- }
- else if (X662is_current((((T492*)C))->_target/*12*/)) {
- R=X496use_current((((T492*)C))->_run_feature/*20*/);
- }
- else {
- R=X662use_current((((T492*)C))->_target/*12*/);
- }
- /*FI*/return R;
- }
- void r492cpc_to_runnable(T492* C,T0* a1){
- T0* _rc=NULL;
- T0* _t=NULL;
- _t=X662to_runnable((((T492*)C))->_target/*12*/,a1);
- /*IF*/if ((_t)==((void*)(NULL))) {
- r683add_position(X662start_position((((T492*)C))->_target/*12*/));
- /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms2_135);
- r683fatal_error(((T683*)(oBC364eh)),b1);
- }/*]*/
- }
- /*FI*/C->_target=_t;
- _rc=X291run_class(X662result_type((((T492*)C))->_target/*12*/));
- C->_run_feature=r355get_rf(((T355*)_rc),(T0*)C);
- r576update((((T492*)C))->_target/*12*/,(((T492*)C))->_run_feature/*20*/);
- }
- void r492error(T0* a1,T0* a2){
- r683add_position(a1);
- r683error(((T683*)(oBC364eh)),a2);
- }
- /*No:CALL_1_C.isa_dca_inline_argument*/
- /*No:CALL_1_C.fatal_error*/
- /*No:CALL_1_C.fz_bad_argument*/
- /*No:CALL_1_C.arg1*/
- int r492standard_compile_to_jvm_into(T492* C,T0* a1){
- int R=0;
- /*[IRF3.4compile_to_jvm*//*[IRF3.6call_proc_call_c2jvm*/{T492* C1=C;
- r228b_put_cpc(((T228*)(oBC364jvm)),(T0*)C1);
- }/*]*/
- /*]*/
- R=X291jvm_convert_to(X291run_type((((T492*)C))->_result_type/*24*/),a1);
- return R;
- }
- /*No:CALL_1_C.call_proc_call_c2jvm*/
- void r492afd_check(T492* C){
- T0* _running=NULL;
- T0* _rc=NULL;
- _rc=X291run_class(X662result_type((((T492*)C))->_target/*12*/));
- _running=(((T355*)((T355*)_rc)))->_running/*12*/;
- /*IF*/if ((_running)==((void*)(NULL))) {
- r683add_position(X662start_position((((T492*)C))->_target/*12*/));
- /*[IRF3.6append*/{T0* b1=((T0*)ms1_135);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.6append*/{T0* b1=X291run_time_mark((((T355*)((T355*)_rc)))->_current_type/*0*/);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- /*[IRF3.6append*/{T0* b1=((T0*)ms141_470);
- r7append(((T7*)(oBC683explanation)),b1);
- }/*]*/
- r683print_as_warning(((T683*)(oBC364eh)));
- r355set_at_run_time(((T355*)_rc));
- }
- else if ((r396count(((T396*)_running)))>(0)) {
- r576update((((T492*)C))->_target/*12*/,(((T492*)C))->_run_feature/*20*/);
- }
- /*FI*/X662afd_check((((T492*)C))->_target/*12*/);
- /*IF*/{/*AT*/r431afd_check(((T431*)((((T492*)C))->_arguments/*28*/)));
- }
- /*FI*/}
- /*No:RUN_FEATURE_2.arguments*/
- /*No:RUN_FEATURE_2.ucs_true*/
- /*No:RUN_FEATURE_2.actuals_clients*/
- T0* r820jvm_descriptor(T820* C){
- T0* R=NULL;
- /*[IRF3.3clear*/((((T7*)(((T7*)(oBC496tmp_jvm_descriptor)))))->_count)=(0);
- /*]*/
- r820update_tmp_jvm_descriptor(C);
- R=oBC496tmp_jvm_descriptor;
- return R;
- }
- /*No:RUN_FEATURE_2.ucs_in_computation*/
- void r820make(T820* C,T0* a1,T0* a2,T0* a3){
- C->_current_type=a1;
- C->_name=a2;
- C->_base_feature=a3;
- r199put(((T199*)((((T355*)((T355*)(r820run_class(C)))))->_feature_dictionary/*24*/)),(T0*)C,X776to_key(a2));
- r604incr_magic_count(((T604*)(oBC364small_eiffel)));
- C->_use_current_state=1005;
- r604push(((T604*)(oBC364small_eiffel)),(T0*)C);
- r820initialize(C);
- r604pop(((T604*)(oBC364small_eiffel)));
- }
- /*No:RUN_FEATURE_2.name*/
- T0* r820jvm_root_class(void){
- if (fBC364jvm_root_class==0){
- T0* R=NULL;
- fBC364jvm_root_class=1;
- {T7*n=malloc(sizeof(*n));
- *n=M7;
- r7make(n,12);
- R=(T0*)n;
- }
- r7copy(((T7*)R),(((T228*)((T228*)(oBC364jvm))))->_output_name/*16*/);
- r7extend(((T7*)R),'\57');
- r7append(((T7*)R),((T0*)ms112_470));
- oBC364jvm_root_class=R;}
- return oBC364jvm_root_class;}
- int r820arg_count(T820* C){
- int R=0;
- /*IF*/if (((((T820*)C))->_arguments/*20*/)!=((void*)(NULL))) {
- R=/*(IRF4.6count*/(((T65*)((T65*)((((T31*)((T31*)((((T820*)C))->_arguments/*20*/))))->_flat_list/*12*/))))->_upper/*12*//*)*/;
- }
- /*FI*/return R;
- }
- /*No:RUN_FEATURE_2.local_vars*/
- /*No:RUN_FEATURE_2.base_feature*/
- /*No:RUN_FEATURE_2.start_position*/
- int r820jvm_max_locals(T820* C){
- int R=0;
- R=X291jvm_stack_space((((T820*)C))->_current_type/*4*/);
- /*IF*/if (((((T820*)C))->_arguments/*20*/)!=((void*)(NULL))) {
- R=(R)+(r31jvm_stack_space(((T31*)((((T820*)C))->_arguments/*20*/))));
- }
- /*FI*//*IF*//*AF*//*AE*/
- /*FI*//*IF*/if (((((T820*)C))->_result_type/*24*/)!=((void*)(NULL))) {
- R=(R)+(X291jvm_stack_space((((T820*)C))->_result_type/*24*/));
- }
- /*FI*/return R;
- }
- int r820jvm_result_offset(T820* C){
- int R=0;
- R=X291jvm_stack_space((((T820*)C))->_current_type/*4*/);
- /*IF*/if (((((T820*)C))->_arguments/*20*/)!=((void*)(NULL))) {
- R=(R)+(r31jvm_stack_space(((T31*)((((T820*)C))->_arguments/*20*/))));
- }
- /*FI*//*IF*//*AF*//*AE*/
- /*FI*/return R;
- }
- int r820is_exported_in(T820* C,T0* a1){
- int R=0;
- R=r636gives_permission_to(((T636*)(r820clients(C))),a1);
- return R;
- }
- /*No:RUN_FEATURE_2.compute_use_current*/
- /*No:RUN_FEATURE_2.result_type*/
- /*No:RUN_FEATURE_2.jvm_field_or_method*/
- int r820jvm_argument_offset(T820* C,T0* a1){
- int R=0;
- R=X291jvm_stack_space((((T820*)C))->_current_type/*4*/);
- R=(R)+(r31jvm_offset_of(((T31*)((((T820*)C))->_arguments/*20*/)),a1));
- return R;
- }
- /*No:RUN_FEATURE_2.is_static*/
- void r820add_client(T820* C,T0* a1){
- int _i=0;
- /*IF*/if (((((T820*)C))->_actuals_clients/*12*/)==((void*)(NULL))) {
- {T187*n=malloc(sizeof(*n));
- *n=M187;
- r187with_capacity(n,4);
- C->_actuals_clients=(T0*)n;
- }
- r187add_last(((T187*)((((T820*)C))->_actuals_clients/*12*/)),a1);
- }
- else {
- _i=r187fast_index_of(((T187*)((((T820*)C))->_actuals_clients/*12*/)),a1);
- /*IF*/if ((_i)>((((T187*)((T187*)((((T820*)C))->_actuals_clients/*12*/))))->_upper/*8*/)) {
- r187add_last(((T187*)((((T820*)C))->_actuals_clients/*12*/)),a1);
- }
- /*FI*/}
- /*FI*/r355add_client(((T355*)(r820run_class(C))),a1);
- }
- T0* r820jvm_root_descriptor(void){
- if (fBC364jvm_root_descriptor==0){
- T0* R=NULL;
- fBC364jvm_root_descriptor=1;
- {T7*n=malloc(sizeof(*n));
- *n=M7;
- r7make(n,12);
- R=(T0*)n;
- }
- r7extend(((T7*)R),'L');
- r7append(((T7*)R),r820jvm_root_class());
- r7extend(((T7*)R),'\73');
- oBC364jvm_root_descriptor=R;}
- return oBC364jvm_root_descriptor;}
- /*No:RUN_FEATURE_2.use_current_state*/
- /*No:RUN_FEATURE_2.can_be_dropped*/
- void r820mapping_jvm(T820* C){
- int _stack_level=0;
- int _idx=0;
- r228push_target_as_target(((T228*)(oBC364jvm)));
- _stack_level=(X291jvm_stack_space((((T820*)C))->_result_type/*24*/))-(1);
- _idx=r95idx_fieldref(((T95*)(oBC364constant_pool)),(T0*)C);
- r256opcode_getfield(((T256*)(oBC364code_attribute)),_idx,_stack_level);
- }
- /*No:RUN_FEATURE_2.current_type*/
- T0* r820run_class(T820* C){
- T0* R=NULL;
- R=X291run_class((((T820*)C))->_current_type/*4*/);
- return R;
- }
- /*No:RUN_FEATURE_2.static_value_mem*/
- /*No:RUN_FEATURE_2.ucs_not_computed*/
- void r820fall_down(T820* C){
- T0* _rf=NULL;
- T0* _sub_name=NULL;
- T0* _sub_bc=NULL;
- T0* _current_bc=NULL;
- T0* _sub_rc=NULL;
- T0* _current_rc=NULL;
- int _i=0;
- T0* _running=NULL;
- _current_rc=X291run_class((((T820*)C))->_current_type/*4*/);
- _running=(((T355*)((T355*)_current_rc)))->_running/*12*/;
- /*IF*/if ((_running)!=((void*)(NULL))) {
- _current_bc=X291base_class((((T820*)C))->_current_type/*4*/);
- _i=(((T396*)((T396*)_running)))->_lower/*12*/;
- while (!((_i)>((((T396*)((T396*)_running)))->_upper/*8*/))) {
- _sub_rc=r396item(((T396*)_running),_i);
- /*IF*/if ((_sub_rc)!=((void*)(_current_rc))) {
- _sub_bc=X291base_class((((T355*)((T355*)_sub_rc)))->_current_type/*0*/);
- _sub_name=r605new_name_of(((T605*)_sub_bc),_current_bc,(((T820*)C))->_name/*16*/);
- _rf=r355get_feature(((T355*)_sub_rc),_sub_name);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*/}
- /*No:RUN_FEATURE_2.fz_jvm_root*/
- /*No:RUN_FEATURE_2.ucs_false*/
- /*No:RUN_FEATURE_2.is_pre_computable*/
- T0* r820clients(T820* C){
- T0* R=NULL;
- T0* _bfbc=NULL;
- T0* _bc=NULL;
- /*IF*/if (((((T820*)C))->_clients_memory/*8*/)==((void*)(NULL))) {
- _bc=X291base_class((((T820*)C))->_current_type/*4*/);
- _bfbc=(((T106*)((T106*)((((T820*)C))->_base_feature/*32*/))))->_base_class/*4*/;
- /*IF*/if ((_bc)==((void*)(_bfbc))) {
- R=(((T106*)((T106*)((((T820*)C))->_base_feature/*32*/))))->_clients/*20*/;
- }
- else {
- R=r605clients_for(((T605*)_bc),(((T820*)C))->_name/*16*/);
- }
- /*FI*/C->_clients_memory=R;
- }
- else {
- R=(((T820*)C))->_clients_memory/*8*/;
- }
- /*FI*/return R;
- }
- int r820use_current(T820* C){
- int R=0;
- {int z1=(((T820*)C))->_use_current_state/*28*/;
-
- if((1004==z1)){
- R=1;
- }
- else
- if((1003==z1)){
- }
- else
- if((1005==z1)){
- C->_use_current_state=1006;
- /*[IRF3.3compute_use_current*/((((T820*)(C)))->_use_current_state)=(1004);
- /*]*/
- R=r820use_current(C);
- }
- else {R=1;
- }}
- return R;
- }
- void r820jvm_define(T820* C){
- T0* _cp=NULL;
- int _descriptor=0;
- int _name_idx=0;
- _cp=oBC364constant_pool;
- _name_idx=r95idx_uft8(((T95*)_cp),X776to_string((((T820*)C))->_name/*16*/));
- _descriptor=r95idx_uft8(((T95*)_cp),r820jvm_descriptor(C));
- r543add(((T543*)(oBC364field_info)),1,_name_idx,_descriptor);
- }
- int r820jvm_local_variable_offset(T820* C,T0* a1){
- int R=0;
- R=X291jvm_stack_space((((T820*)C))->_current_type/*4*/);
- /*IF*/if (((((T820*)C))->_arguments/*20*/)!=((void*)(NULL))) {
- R=(R)+(r31jvm_stack_space(((T31*)((((T820*)C))->_arguments/*20*/))));
- }
- /*FI*/R=(R)+(r620jvm_offset_of(((T620*)(/*(IRF4.1local_vars*/NULL/*)*/)),a1));
- return R;
- }
- /*No:RUN_FEATURE_2.clients_memory*/
- void r820initialize(T820* C){
- C->_result_type=X291to_runnable((((T106*)((T106*)((((T820*)C))->_base_feature/*32*/))))->_result_type/*12*/,(((T820*)C))->_current_type/*4*/);
- }
- void r820afd_check(T820* C){
- T0* _rc=NULL;
- _rc=X291run_class(X291run_type((((T820*)C))->_result_type/*24*/));
- }
- void r820update_tmp_jvm_descriptor(T820* C){
- T0* _rt=NULL;
- _rt=X291run_type((((T820*)C))->_result_type/*24*/);
- /*IF*/if (X291is_reference(_rt)) {
- r7append(((T7*)(oBC496tmp_jvm_descriptor)),r820jvm_root_descriptor());
- }
- else {
- X291jvm_descriptor_in(_rt,oBC496tmp_jvm_descriptor);
- }
- /*FI*/}
- int r542affect(T542* C,T0* a1){
- int R=0;
- /*IF*/if (/*(IRF4.7for_all*/((((T542*)C))->_list/*4*/)==(NULL)/*)*/) {
- R=1;
- }
- else {
- R=r953has(((T953*)((((T542*)C))->_list/*4*/)),a1);
- }
- /*FI*/return R;
- }
- void r542make_all(T542* C,T0* a1){
- C->_clients=a1;
- C->_list=NULL;
- }
-
-